﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;

/// <summary>
/// Summary description for ManejoUsuarios
/// </summary>
public class ManejoUsuarios
{
    #region Variables
    DBMySql _mys;
    private static int _id;

    public static int Id
    {
        get { return ManejoUsuarios._id; }
        set { ManejoUsuarios._id = value; }
    }

    private string _nombre;

    public string Nombre
    {
        get { return _nombre; }
        set { _nombre = value; }
    }

    private string _usuario;

    public string Usuario
    {
        get { return _usuario; }
        set { _usuario = value; }
    }

    private string _passwd;

    public string Passwd
    {
        get { return _passwd; }
        set { _passwd = value; }
    }

    private int _tipo;

    public int Tipo
    {
        get { return _tipo; }
        set { _tipo = value; }
    }
    #endregion
    
    public ManejoUsuarios(string nom,string usu,string pass,int tip)
	{
        _mys = new DBMySql();
        Nombre = nom; Usuario = usu; Passwd = pass; Tipo = tip;
	}

    public ManejoUsuarios()
    {
        _mys = new DBMySql();
    }

    public bool Autenticacion(string _usu,string _pass)
    {
        try
        {
            string _sp = "autenticacion";
            Parametros[] _array = new Parametros[2];
            _array[0] = new Parametros("_usu", _usu);
            _array[1] = new Parametros("_pass", _pass);
            if (_mys.ReStoredProcedure(_sp, _array))
            {
                if (_mys.GetTabla.Rows[0].ItemArray[0].ToString() == _usu && _mys.GetTabla.Rows[0].ItemArray[1].ToString() == _pass)
                {
                    return true;
                }
            }
            return false;
        }
        catch (Exception ex) { return false; }
    }

    public bool Ins()
    { 
        //DD
        string _sp = "InsUsuario";
        Parametros[] _array = new Parametros[4];
        _array[0] = new Parametros("_nom", Nombre);
        _array[1] = new Parametros("_nom_usu",Usuario);
        _array[2] = new Parametros("_passwd", Passwd);
        _array[3] = new Parametros("_tipo", Tipo.ToString());
        //FUNC
        return _mys.ExStoredProcedure(_sp, _array) ? true : false;
    }

    public bool Mod()
    {
        //DD
        string _sp = "ModUsuario";
        Parametros[] _array = new Parametros[4];
        _array[0] = new Parametros("_nom", Nombre);
        _array[1] = new Parametros("_nom_usu", Usuario);
        _array[2] = new Parametros("_passwd", Passwd);
        _array[3] = new Parametros("_tipo", Tipo.ToString());
        //FUNC
        return _mys.ExStoredProcedure(_sp, _array) ? true : false;
    }

    public bool Elim()
    {
        //DD
        string _sp = "ElimUsuario";
        Parametros[] _array = new Parametros[1];
        _array[0] = new Parametros("_nom_usu", Usuario);
        //FUNC
        return _mys.ExStoredProcedure(_sp, _array) ? true : false;
    }

    public DataTable Mostrar()
    {
        string _sp = "SelUsuarios";
        _mys.ReStoredProcedure(_sp);
        return _mys.GetTabla;
    }
}